package Gestores;

import java.util.List;

import entidadesHibernate.Rol;
import entidadesHibernate.Usuario;
import AdminBD.DAOUsuario;
import AdminBD.DAOUsuarioMySql;
import Excepciones.Interfaz.ContraseniaIncorrectaException;
import Excepciones.Interfaz.UsuarioInexistenteException;

public class GestorDeUsuario {
	private DAOUsuario daoUsuario = new DAOUsuarioMySql();
	private Usuario usuarioLoggeado;
	
	public void validarUsuario(String nombreUsuario, String contrasenia) throws ContraseniaIncorrectaException, UsuarioInexistenteException{
		if(!daoUsuario.existeUsuario(nombreUsuario))
			throw new UsuarioInexistenteException();
		else if(!daoUsuario.validarUsuario(nombreUsuario,contrasenia))
			throw new ContraseniaIncorrectaException();
		usuarioLoggeado=daoUsuario.buscarUsuario(nombreUsuario);
	}
	
	public Usuario getUsuarioLoggeado(){
		return usuarioLoggeado;
	}
	
	public Usuario obtenerUsuario(String nombreUsuario){
		return daoUsuario.buscarUsuario(nombreUsuario);
	}


	public void guardarUsuario(Usuario usuario){
		daoUsuario.agregarUsuario(usuario);
	}

	public List<Rol> getRoles() {
		return daoUsuario.getRoles();
	}
	
}
